package org.infosys.basic.utils;

import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.HtmlEmail;
import org.springframework.util.StringUtils;

public class SendEmailUtils {

    public static void sendMail(String address, String title, String text) throws EmailException {

        if (StringUtils.isEmpty(address) || StringUtils.isEmpty(title) || StringUtils.isEmpty(text)) {
            throw new EmailException();
        }

        try {
            HtmlEmail email = new HtmlEmail();

            // 这里是SMTP发送服务器的名字：163的如下："smtp.163.com"
            email.setHostName("smtp.qq.com");
            email.setSSLOnConnect(true);
            email.setSmtpPort(465);
            // 字符编码集的设置
            email.setCharset("UTF-8");
            // 收件人的邮箱
            email.addTo(address);
            // 发送人的邮箱
            email.setFrom("747267661@qq.com");
            // 如果需要认证信息的话，设置认证：用户名-密码。分别为发件人在邮件服务器上的注册名称和密码
            email.setAuthentication("747267661@qq.com", "odbokbdvhhqmbejc");
            // 要发送的邮件主题
            email.setSubject(title);
            // 要发送的信息，由于使用了HtmlEmail，可以在邮件内容中使用HTML标签
            email.setHtmlMsg(text);
            email.send();

        } catch (Exception e) {
            e.printStackTrace();
            throw new EmailException();
        }
    }

}